1. Field of the Invention
The present invention relates to a print job management system that receives a plurality of print jobs from a plurality of print data generating apparatuses, such as computers, manages the received print jobs, and causes at least one printer to adequately carry out printing operations corresponding to these print jobs.
2. Description of the Related Art
With the enhanced popularity of LANs (local area networks) and other similar networks, the typically adopted system connects a plurality of computers (hereinafter may be referred to as clients) and at least one printer via a network and enables the printer to be commonly used by the clients. The printer receives a plurality of print jobs transmitted from the respective clients. In order to process such print jobs, each printer has an internal or external spool buffer for stacking the print jobs. The print jobs are once stored in the spool buffer and are successively transferred for printing. The print jobs are managed by the software called the spooler and are in principle carried out in the storage sequence in the spool buffer. A client who has a predetermined right may change the execution sequence of the print jobs or delete a selected print job.
A recently developed system realizes the more intelligent management than the conventional spooler and has the function of accepting only the print jobs transmitted from a predetermined user who has obtained approval and the function of keeping input print jobs and carrying out a printing operation only when predetermined conditions, for example, a preset time, are fulfilled.
There are print jobs of two different types. One type of the print job enables the printer to carry out printing based on a predetermined format of data, for example, raster image, data, transmitted from the client. This type of print job is hereinafter referred to as the remote print job. The other type of the print job requires establishment of mutual communication between the client and the printer. This type of print job is hereinafter referred to as the interactive print job. One example of the interactive print job is a print job that describes the drawing contents to be printed not as raster image data but in PostScript (registered trademark) language. The PostScript language is an interpreter program language. The printer consecutively repeats reading, interpreting, and executing commands to implement printing. In this process, various pieces of information, such as version information of the PostScript language and a font list supported by the printer, are transmitted between the printer and the client.
In the prior art system, when an interactive print job is transmitted from the client, the spooler functions as the printer and accepts the print job while the mutual communication is established between the spooler and the client. When the execution sequence reaches the print job, the spooler then functions as the client and executes the print job while the mutual communication is established between the spooler and the printer. In order to attain such functions, the spooler that manages the interactive print jobs is forced to carry out extremely complicated processing. Such heavy loading is a serious problem especially for the spooler incorporated in the printer, because of the relatively poor processing ability of the CPU. The quasi mutual communication between the client and the printer attained by the double roles of the spooler may not sufficiently support the required functions. It is extremely difficult for the prior art spooler to carry out advanced management of interactive print jobs, for example, keeping the print jobs and transferring the input print job to another printer.
Similar problems to those described above with regard to the network printing system are found in a local printer connected locally to a specific printer. In the case where a plurality of print jobs transmitted to the local printer and subjected to management include an interactive print job, the similar problems arise.